-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Pluggable Scheduler: Make entry points into sequential cont/user scheduler weak functions #6182
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Blink.ino before: After: |
|
@hreintke What do you think? Could you please check the FunctionalInterrupt/library.properties? |
a6e61f3 to
9f22320
Compare
d3943cb to
e7daf1e
Compare
97d82df to
56975b3
Compare
|
@d-a-v @earlephilhower @devyte This is 3 weeks old, and I am sorry, had gotten out of control somehow, being a PR containing a lot of unrelated changes. |
|
@d-a-v #6214 , why o' why... But of course my biggest gripe is that all my PRs need intensive care now 👎 |
I agree. I did what the majority told me. In some other comment it was clearly stated that scheduled functions should be allowed to run You can however use recurrent scheduled function like you do with scheduled function with
|
|
@d-a-v I'll see what I can do to the circular-queue based scheduler. First, I'd like to see the EspSoftwareSerial issue (#6227) through, the attachInterrupt fix/improvement is important (#6047 does away with #6055 and #6048 in one step), and getting this here pluggability into core would be awesome. |
Oh wait a minute - is this a suggestion for scheduled ISRs? Doing those without FIFO semantics is completely wrong. |
|
It's not a suggestion for scheduled ISR, there are conditions if you wish to do that, and one of them is "without fifo semantics".
Now if you think scheduled ISR should be called also from (see? I do my homework) |
dcfc9a0 to
f3d5c10
Compare
|
@d-a-v What's in master now doesn't work, I am sorry. Regression test using f5a882d is OK. Just running |
That one was hairy. It will be fixed by #6233 (I hadn't retested after change from |
|
@d-a-v Can you help me? Where's the discussion that led to implementing two separate lists for immediate and timed scheduled functions? Was there any proof of the efficiency of this? Is anybody in any way looking at my work with the lock-free data structure and using the timer for longer delays at all right now? |
5712e7c to
d937f46
Compare
c760644 to
669502b
Compare
f7efedf to
71bab7c
Compare
9d6bc10 to
bba72cc
Compare
…o libraries, too.
…result in another PR.
f377be7 to
789662e
Compare
|
Withdrawing this PR - existing Scheduler in core has received patches, works nicely, belongs in core. |
For sketches that don't use libraries depending on a user scheduler, this PR helps eliminate the Scheduler from the binaries, saving memory. To complete this, the Scheduler would have to be moved from core to the libraries.
Also, plugging different schedulers becomes more obvious to do.
Questions:
loop_completed()andyield_completed()?